import request from '@/utils/request';
import { AxiosPromise } from 'axios';
import { ExtensionVO, ExtensionForm, ExtensionQuery } from '@/api/dormitory/extension/types';

/**
 * 查询宿舍楼扩展信息（负责人、设备等信息）列表
 * @param query
 * @returns {*}
 */

export const listExtension = (query?: ExtensionQuery): AxiosPromise<ExtensionVO[]> => {
  return request({
    url: '/dormitory/extension/list',
    method: 'get',
    params: query
  });
};

/**
 * 查询宿舍楼扩展信息（负责人、设备等信息）详细
 * @param id
 */
export const getExtension = (id: string | number): AxiosPromise<ExtensionVO> => {
  return request({
    url: '/dormitory/extension/' + id,
    method: 'get'
  });
};

/**
 * 新增宿舍楼扩展信息（负责人、设备等信息）
 * @param data
 */
export const addExtension = (data: ExtensionForm) => {
  return request({
    url: '/dormitory/extension',
    method: 'post',
    data: data
  });
};

/**
 * 修改宿舍楼扩展信息（负责人、设备等信息）
 * @param data
 */
export const updateExtension = (data: ExtensionForm) => {
  return request({
    url: '/dormitory/extension',
    method: 'put',
    data: data
  });
};

/**
 * 删除宿舍楼扩展信息（负责人、设备等信息）
 * @param id
 */
export const delExtension = (id: string | number | Array<string | number>) => {
  return request({
    url: '/dormitory/extension/' + id,
    method: 'delete'
  });
};
